﻿using System;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.nodes.teradata;

namespace SharpSqlAnalyzer.stmt.teradata
{
	// Token: 0x020000D6 RID: 214
	public class TTeradataGive : TCustomSqlStatement
	{
		// Token: 0x06000785 RID: 1925 RVA: 0x00300CE1 File Offset: 0x002FEEE1
		public TTeradataGive(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstteradatagive;
		}

		// Token: 0x1700015F RID: 351
		// (get) Token: 0x06000786 RID: 1926 RVA: 0x00300CF5 File Offset: 0x002FEEF5
		// (set) Token: 0x06000787 RID: 1927 RVA: 0x00300CFD File Offset: 0x002FEEFD
		public virtual TObjectName Db_or_user_name
		{
			get
			{
				return this.db_or_user_name;
			}
			set
			{
				this.db_or_user_name = value;
			}
		}

		// Token: 0x17000160 RID: 352
		// (get) Token: 0x06000788 RID: 1928 RVA: 0x00300D06 File Offset: 0x002FEF06
		// (set) Token: 0x06000789 RID: 1929 RVA: 0x00300D0E File Offset: 0x002FEF0E
		public virtual TObjectName Recipient_name
		{
			get
			{
				return this.recipient_name;
			}
			set
			{
				this.recipient_name = value;
			}
		}

		// Token: 0x0600078A RID: 1930 RVA: 0x00300D18 File Offset: 0x002FEF18
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			base.doParseStatement(psql);
			this.db_or_user_name = ((TTeradataGiveSqlNode)this.rootNode).Db_or_user_name;
			this.recipient_name = ((TTeradataGiveSqlNode)this.rootNode).Recipient_name;
			return 0;
		}

		// Token: 0x0600078B RID: 1931 RVA: 0x00300D64 File Offset: 0x002FEF64
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x0600078C RID: 1932 RVA: 0x00300D74 File Offset: 0x002FEF74
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x040011E5 RID: 4581
		private TObjectName db_or_user_name;

		// Token: 0x040011E6 RID: 4582
		private TObjectName recipient_name;
	}
}
